import CanvasAbstract from './canvasAbstract'
import config from '../config'
import model from '../model/play'

class Play extends CanvasAbstract implements ICanvas {
  num(): number {
    return 1
  }
  model(): ModelConstructor {
    return model
  }
  render(): void {
    this.createModels()
    super.renderModels()
  }
  protected createModels() {
    const cw = config.canvas.width
    const ch = config.canvas.height
    const mw = config.model.width
    const mh = config.model.height
    ;[{ x: cw / 2 - mw / 2 + mw * 4, y: ch - mh }].forEach((position) => {
      const model = this.model()
      const instance = new model(position.x, position.y)
      this.models.push(instance)
    })
  }
}

export default new Play('play')
